// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	8/2/2013 8:17:40 PM				
// -----------------------------

#ifndef _ObjectLuaCommon_h
#define _ObjectLuaCommon_h

#include "ObjectLuaDef.h"

#include "LuaAssert.h"
#include "LuaError.h"
#include "LuaException.h"

namespace ObjectLua
{

	struct OBJECTLUA LuaReg 
	{
		const char* Name;
		int (*Function)(lua_State*);
	};

	template<typename T>
	struct LuaGCObject
	{
		T*				Object;
		bool			ShouldBeCollected;
	};
	template<typename T>
	struct LuaGCObject<const T*>
	{
		const T*		Object;
		bool			ShouldBeCollected;
	};
}

#endif